#ifndef QPROGRAM_H
#define QPROGRAM_H

#include <QWidget>
#include <QPainter>
#include <QDebug>
#include <QJsonDocument>
#include <QJsonArray>
#include <QJsonObject>
#include <QString>
#include <QCoreApplication>
#include <QListWidget>
#include <QFile>

#include "mylogin.h"
#include "mystm.h"
#include "mymodbus.h"
#include "mqtthandler.h"
#include "globalval.h"
#include "homepage.h"
#include "datainfo.h"
#include "mainwindow.h"
#include "videowin.h"


namespace Ui {
class QProgram;
}

class QProgram : public QWidget
{
    Q_OBJECT

public:
    explicit QProgram(QWidget *parent = 0);
    ~QProgram();

private:
    Ui::QProgram *ui;
MqttHandler *mqtt;
    Mylogin *myLogin;
    MyStm *myStm;
    MyModbus *myModbus;
    //MyVideo *myVideo;
    VideoWin *myVideo;
    //MyHistory *myHis;
    HomePage *myHomePage;
    DataInfo * data;
    MainWindow *myWindow;
    QJsonObject parse();//序列化
    //画家
    void paintEvent(QPaintEvent * event);


private slots:
    void dataUpSlot(QByteArray);
    void getConnectIpSlot(QString);

signals:
    void keyValueOut(int,QString);

};

#endif // QPROGRAM_H
